/**
 * @file Dogz08ImportDialog.h
 *
 * Klasa okna importu danych z DOGZ-a 0.8 - nagłówek.
 *
 * @author Zbigniew Siciarz
 * @date 2009
 * @version 2.0.0
 * @since 2.0.0
 */

#ifndef DOGZ08IMPORTDIALOG_H
#define DOGZ08IMPORTDIALOG_H

#include "ui_Dogz08ImportDialog.h"
#include <QDialog>


/**
 * Okno dialogowe importowania obserwacji ze starej wersji DOGZ-a.
 *
 * Umożliwia import danych z DOGZ-a 0.8 (lub starszej wersji), wczytuje
 * pliki zapisane w starym formacie, przetwarza do postaci obiektów obserwacji
 * a następnie zapisuje do lokalnej bazy SQLite.
 */
class Dogz08ImportDialog : public QDialog
{
    Q_OBJECT

public:
    Dogz08ImportDialog(QWidget *parent = 0);
    ~Dogz08ImportDialog() {}

private:
    /**
     * Klasa GUI wygenerowana przez Designera.
     */
    Ui::Dogz08ImportDialogClass ui;

    /**
     * Liczba zaimportowanych obserwacji.
     */
    unsigned int observationsImported;

    void importFile(const QString& fileName);
    void importLine(const QString& line);

private slots:
    void on_btnBrowse_clicked();
    void on_btnImport_clicked();
};

#endif // DOGZ08IMPORTDIALOG_H
